/*
 * 文 件 名:  collectionSort.java
 * 版    权:   深圳埃思欧纳信息咨询有限公司版权所有. YYYY-YYYY,  All rights reserved
 * 描    述:   <描述>
 * 修 改 人:  honny.huang
 * 修改时间: 2011-4-19
 * 跟踪单号:  <跟踪单号>
 * 修改单号:  <修改单号>
 * 修改内容:  <修改内容>
 */
package com.test;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

/**
 * <Collections常用的四个排序方法 ,这一个类包含可以操作或返回集合的专用静态类 > <功能详细描述>
 *
 * @author honny.huang
 * @version [版本号, 2011-4-19]
 * @see [相关类/方法]
 * @since [产品/模块版本]
 */ 
public class CollectionsSort 
{   
     
    @SuppressWarnings("unchecked")
	public static void main(String[] args)
    {   
           
        int[] test = new int[]{1,5,8,3,4,10,9,7};   
        List<Integer> ids = new ArrayList<Integer>();   
        for(int i : test){   
            ids.add(i);   
        }   
        //自然排序  (升序) 
        Collections.sort(ids);   
           
        //倒序   
        Collections.reverse(ids);   
           
        //随机排序   
        Collections.shuffle(ids);  
        
        String[] test1 = new String[]{"架构工程师","架构","工程师","工程","架构师"};
        ArrayList<String> keywords = new ArrayList<String>();
        for(String i : test1)
        {   
        	keywords.add(i);   
        }  
        Comparator  s = new StrLengthComparator();   
        Collections.sort(keywords, s);   
           
        //按指定的Sort类进行排序   
        CollectionsSort.SortElements s2 = new SortElements();   
        
        Collections.sort(ids, s2);   
    }   
       
    /**  
     * 排序规则类  
     *   
     * @author honny.huang  
     * @date 2011-4-19 
     */  
//     static  class SortElements implements Comparator<Object>
//     {   
//        public int compare(Object o1, Object o2) 
//        {   
//        	if (o1.toString().length() < o2.toString().length())
//            {
//                return 1;
//            }
//            else
//            {
//                return 0;
//            }
//        }   
//    }   
    
   // 49 95 45 
    
     static  class SortElements implements Comparator<Integer>
     {   
        public int compare(Integer o1, Integer o2) 
        {   
        	int result = o1-o2 ;
        	System.out.println(result);
            return result;   
        }   
    }   
}  

